1. Field of the Invention
The present invention relates generally to conversion of user text input in one language or character set to another language or character set. More specifically, systems and methods for predictive conversion of user text input in one language or character set to another language or character set are disclosed.
2. Description of Related Art
It may be difficult or impossible for a user to enter text directly into a computer system using non-target language input devices such as keyboards. For example, it may be difficult for the user to enter text directly in non-Roman based languages such as Chinese, Japanese, and Korean (CJK) using a conventional keyboard with Roman or alphabetic characters. Instead, a separate conversion step is generally required in which a conversion engine converts the user's alphabetic string input to the target language. As an example, one common method for inputting Chinese language text uses phonetic input, e.g., pinyin. Pinyin uses alphabetic characters and has a vocabulary listed in the form of multiple syllable words. A pinyin converter then converts the text written in pinyin to Chinese. For example, the user may enter a phonetic representation in pinyin of the desired Chinese text input using the roman letters on a keyboard. A pinyin conversion engine can then convert the pinyin input to Chinese text. The appropriate Chinese text can then be entered into an application, e.g., a word processing application and/or search engine.
As another example, Japanese text can be expressed using a variety of different character sets, including hiragana, katakana, and kanji, none of which are easily entered using a typical ASCII keyboard based on the Roman alphabet. One method for inputting Japanese language text uses romaji, a phonetic, Roman-alphabet representation of Japanese. For example, the user can use a word processor such as Ichitaro, from JustSystem Corp. of Tokushima City, Japan, to convert romaji text input to katakana, hiragana, and/or kanji. The Japanese text can then be entered into an application, e.g., a word processing application and/or search engine. Another example of a commercially available conversion engine or program is Input Method Editors by Microsoft for various languages.
However, conversion programs generally require the user to enter the complete representation of the text input. In addition, such conversions programs are tedious for the user because there is often no one-to-one conversion between the phonetic Roman representation on the one hand and text in the native or target language on the other hand. Instead, most Roman representation input entered by the user is ambiguous. In other words, for most Roman representation user inputs, there is more than one native language conversion that can be made by the conversion program. The conversion program thus may list multiple possible conversions, e.g., in order of probability, in a separate window or a drop-down list. The conversion engine and/or the user can then select the best or correct conversion. As is evident, such an input method can often be tedious and time consuming for the user due at least in part to the ambiguous Roman representation user input.
What is needed is a more efficient and user friendly method for entering input text using a non-target input language or character set and for converting the user input to a target language or character set.